var net = new Object();
// 编写构造函数
net.AjaxReuqest = function (url, onload, onerror, method, params) {
	this.req = null;
	this.onload = onload;
	this.onerror = (onerror)?onerror:this.defaultError;
	this.loadDate(url, method, params);
}
// 用于初始化XMLHttoRequest对象并指定处理函数，最后发送HTTP请求
net.AjaxReuqest.prototype.loadDate = function loadDate(url, method, params) {
	if (!method) {
		method = "GET";
	}
	if (window.XMLHttpRequest) {
		this.req = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		try {
			this.req = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				this.req = new ActiveXObject("Mcrosoft.XMLHTTP");
			} catch (e) { }
		}
	}
	if (this.req) {
		try {
			var loader = this;
			this.req.onreadystatechange = function() {
				net.AjaxReuqest.onReadyState.call(loader);
			}
			this.req.open(method, url, true);
			if (method == "POST") {
				this.req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			}
			this.req.send(params);
		} catch (e) {
			this.onerror.call(this);
		}
	}
}
// 重构回调函数
net.AjaxReuqest.onReadyState = function () {
	var req = this.req;
	var ready = req.readyState;
	if (ready == 4) {
		if (req.status == 200) {
			this.onload.call(this);
		} else {
			this.onerror.call(this);
		}
	}
}
// 重构默认的错误处理函数
net.AjaxReuqest.prototype.defaultError = function () {
	alert("错误数据\n\n回调状态：" + this.req.readyState + "\n状态：" + this.req.status);
}






